HAL I2S io operation functions migration ¶
This section provides information about the HAL I2S function migration.
HAL I2S full duplex in polling mode ¶
|
HAL1 |
HAL2 |
|---|---|
HAL_StatusTypeDef HAL_I2SEx_TransmitReceive(I2S_HandleTypeDef *hi2s,
const uint16_t *pTxData,
uint16_t *pRxData,
uint16_t Size, uint32_t Timeout);
|
hal_status_t HAL_I2S_TransmitReceive(hal_i2s_handle_t *hi2s,
const void *p_tx_data,
void *p_rx_data,
uint32_t transfer_size,
uint32_t timeout_ms);
|
Related use case: Use case: I2S full duplex Tx/Rx in polling mode
HAL I2S full duplex in DMA mode ¶
|
HAL1 |
HAL2 |
|---|---|
HAL_StatusTypeDef HAL_I2SEx_TransmitReceive_DMA(I2S_HandleTypeDef *hi2s,
const uint16_t *pTxData,
uint16_t *pRxData,
uint16_t Size);
|
hal_status_t HAL_I2S_TransmitReceive_DMA(hal_i2s_handle_t *hi2s,
const void *p_tx_data,
void *p_rx_data,
uint32_t transfer_size);
|
HAL I2S full duplex in interrupt mode ¶
|
HAL1 |
HAL2 |
|---|---|
HAL_StatusTypeDef HAL_I2SEx_TransmitReceive_IT(I2S_HandleTypeDef *hi2s,
const uint16_t *pTxData,
uint16_t *pRxData,
uint16_t Size);
|
hal_status_t HAL_I2S_TransmitReceive_IT(hal_i2s_handle_t *hi2s,
const void *p_tx_data,
void *p_rx_data,
uint32_t transfer_size);
|
Related use case: Use case: I2S full duplex Tx/Rx in interrupt mode
HAL I2S DMA pause transfer ¶
|
HAL1 |
HAL2 |
|---|---|
HAL_StatusTypeDef HAL_I2S_DMAPause(I2S_HandleTypeDef *hi2s);
|
hal_status_t HAL_I2S_MASTER_Pause(hal_i2s_handle_t *hi2s);
|
HAL I2S DMA resume transfer ¶
|
HAL1 |
HAL2 |
|---|---|
HAL_StatusTypeDef HAL_I2S_DMAResume(I2S_HandleTypeDef *hi2s);
|
hal_status_t HAL_I2S_MASTER_Resume(hal_i2s_handle_t *hi2s);
|
HAL I2S DMA stop transfer ¶
|
HAL1 |
HAL2 |
|---|---|
HAL_StatusTypeDef HAL_I2S_DMAStop(I2S_HandleTypeDef *hi2s);
|
Removed in HAL2.
The same functionality can be achieved using the function HAL_I2S_Abort(hal_i2s_handle_t *hi2s);
|
HAL I2S disable I/O swap ¶
|
HAL1 |
HAL2 |
|---|---|
HAL_StatusTypeDef HAL_I2S_DisableIOSwap(I2S_HandleTypeDef *hi2s);
|
hal_status_t HAL_I2S_DisableIOSwap(hal_i2s_handle_t *hi2s);
|
HAL I2S enables I/O swap ¶
|
HAL1 |
HAL2 |
|---|---|
HAL_StatusTypeDef HAL_I2S_EnableIOSwap(I2S_HandleTypeDef *hi2s);
|
hal_status_t HAL_I2S_EnableIOSwap(hal_i2s_handle_t *hi2s);
|
HAL I2S I/O swap is enabled ¶
|
HAL1 |
HAL2 |
|---|---|
uint32_t HAL_I2S_IsEnabledIOSwap(const I2S_HandleTypeDef *hi2s);
|
hal_i2s_io_swap_status_t HAL_I2S_IsEnabledIOSwap(hal_i2s_handle_t *hi2s);
|
HAL I2S receive ¶
|
HAL1 |
HAL2 |
|---|---|
HAL_StatusTypeDef HAL_I2S_Receive(I2S_HandleTypeDef *hi2s, uint16_t *pData, uint16_t Size, uint32_t Timeout);
|
hal_status_t HAL_I2S_Receive(hal_i2s_handle_t *hi2s, void *p_data, uint32_t transfer_size, uint32_t timeout_ms);
|
HAL I2S receive with DMA ¶
|
HAL1 |
HAL2 |
|---|---|
HAL_StatusTypeDef HAL_I2S_Receive_DMA(I2S_HandleTypeDef *hi2s, uint16_t *pData, uint16_t Size);
|
hal_status_t HAL_I2S_Receive_DMA(hal_i2s_handle_t *hi2s, void *p_data, uint32_t transfer_size);
|
HAL I2S receive with interrupt ¶
|
HAL1 |
HAL2 |
|---|---|
HAL_StatusTypeDef HAL_I2S_Receive_IT(I2S_HandleTypeDef *hi2s, uint16_t *pData, uint16_t Size);
|
hal_status_t HAL_I2S_Receive_IT(hal_i2s_handle_t *hi2s, void *p_data, uint32_t transfer_size);
|
HAL I2S transmit in polling mode ¶
|
HAL1 |
HAL2 |
|---|---|
HAL_StatusTypeDef HAL_I2S_Transmit(I2S_HandleTypeDef *hi2s, const uint16_t *pData, uint16_t Size, uint32_t Timeout);
|
hal_status_t HAL_I2S_Transmit(hal_i2s_handle_t *hi2s, const void *p_data, uint32_t transfer_size, uint32_t timeout_ms);
|
HAL I2S transmit using DMA ¶
|
HAL1 |
HAL2 |
|---|---|
HAL_StatusTypeDef HAL_I2S_Transmit_DMA(I2S_HandleTypeDef *hi2s, const uint16_t *pData, uint16_t Size);
|
hal_status_t HAL_I2S_Transmit_DMA(hal_i2s_handle_t *hi2s, const void *p_data, uint32_t transfer_size);
|
Related use case: Use case: I2S transmission in DMA mode
HAL I2S transmit using interrupt ¶
|
HAL1 |
HAL2 |
|---|---|
HAL_StatusTypeDef HAL_I2S_Transmit_IT(I2S_HandleTypeDef *hi2s, const uint16_t *pData, uint16_t Size);
|
hal_status_t HAL_I2S_Transmit_IT(hal_i2s_handle_t *hi2s, const void *p_data, uint32_t transfer_size);
|